package vcp.client.interfaces;

import java.io.IOException;

import vcp.client.exceptions.EmptyRequestException;
import vcp.client.request.Request;
/**
 * 
 * @author VCP team
 *<p>
 *interface of observer
 *</p>
 */
public interface IObservable
{
	/**
	 * <p>
	 * Registration and request save data
	 * </p>
	 * @param request type
	 * @param observer extension
	 * @throws EmptyRequestException command type
	 * @throws IOException
	 */
	void registerAndSendRequest ( Request request, IObserver observer )
			throws EmptyRequestException, IOException;
	/**
	 * Update the register user
	 * @param observer
	 */
	void registerForUpdates ( IObserver observer );
}
